package com.smartrobot.smartrobot.websocket;

import android.content.Context;
import android.content.SharedPreferences;
import android.util.Log;
import com.smartrobot.smartrobot.Common.Common;
import com.smartrobot.smartrobot.Common.CommonFunc;
import com.smartrobot.smartrobot.logToSdCard.LogToSd;
//import com.smartrobot.smartrobot.websocket.websocketHandle_2;
import org.apache.http.cookie.Cookie;
//import org.java_websocket.drafts.Draft_17;
//import org.java_websocket.exceptions.WebsocketNotConnectedException;

import java.net.URI;
import java.util.HashMap;
import java.util.Map;

/**
 * Created by yeluojun on 2015/1/7.
 */
public class socketUtil {


//    public  static void  initSocket(Context context){
//        try{
//            SharedPreferences sharedPreferences = context.getSharedPreferences("CookiePrefsFile", Context.MODE_PRIVATE);
//            String cookieStr = sharedPreferences.getString("cookie_"+ Common.sessionIdKey+Common.addr, "");
//            Cookie cookie= CommonFunc.decodeCookie(cookieStr);
//            String session = cookie.getName()+"="+cookie.getValue();
//
//            URI uri = new URI(Common.webSocketUrl);
//            Map<String,String> httpHead  = new HashMap<String,String>();
//            httpHead.put("Cookie",session);
//
//
//            Common._websocketHandler =  new websocketHandler(uri,new Draft_17(),httpHead,5000);
//            Common._websocketHandler.connect();
//
//
//
//            Log.e("初始化了socket链接",Common._websocketHandler.toString());
//        }catch (Exception E){
//            LogToSd.log_init();
//            LogToSd.error("创建websocket链接失败："+E.toString());
//            Log.e("===========创建websocket链接失败1===========", E.toString());
//        }
//
//    }


    public static void initSocket_2(Context context){
        try{
            SharedPreferences sharedPreferences = context.getSharedPreferences("CookiePrefsFile", Context.MODE_PRIVATE);
            String cookieStr = sharedPreferences.getString("cookie_"+ Common.sessionIdKey+Common.addr, "");
            Cookie cookie= CommonFunc.decodeCookie(cookieStr);
            String session = cookie.getName()+"="+cookie.getValue();
            websocketHandle_2  soc2 = new websocketHandle_2(Common.webSocketUrl,session,context);
            soc2.getWeb_client().connect();

            Common._websocketHandler2 = soc2;
            Common.my_webSocketClient = soc2.getWeb_client();
        }catch (Exception E){
            LogToSd.log_init();
            LogToSd.error("创建websocket链接失败："+E.toString());
            Log.e("===========创建websocket链接失败2===========", E.toString());
        }

    }

//    public static void socket_send(String str,Context context){
//        try{
//            if(Common._websocketHandler == null){
//                initSocket(context);
//            }
//
//            Common._websocketHandler.send(str);
//        }catch (WebsocketNotConnectedException we){
//            Common._websocketHandler.connect();
//
//
//            Log.e("发送失败原因：",we.toString());
//            LogToSd.log_init();
//            LogToSd.error("发送信息失败" + we.toString());
//        }catch (Exception e){
//            LogToSd.log_init();
//            LogToSd.error("发送信息失败" + e.toString());
//            Log.e("发送信息失败",e.toString());
//        }
//    }

    public static void socket_send_2(String str,Context context){
        try{
            Common.my_webSocketClient.connect();
            Common.my_webSocketClient.send(str);



        }catch (Exception e){
//            LogToSd.log_init();
            LogToSd.error("发送信息失败" + e.toString());
            Log.e("发送信息失败",e.toString());
        }
    }


}
